// 本文件由FirstUI授权予关赛川（手机号： 1 56 00    5 15 2 05，身份证尾号：2  2651   9）专用，请尊重知识产权，勿私下传播，违者追究法律责任。
import http from '@/components/firstui/fui-request'

import { baseApiUrl, contentType, successCode } from './settings'

import fui from './fui-app'
//初始化请求配置项
http.create({
	host: baseApiUrl,
	header: {
		'content-type': contentType
	}
})
//请求拦截
http.interceptors.request.use(config => {
	//请求之前可在请求头中加入token等信息
	let token = uni.getStorageSync('yc_m_token') || 'testToken';
	if (config.header) {
		config.header['token'] = token
	} else {
		config.header = {
			'token': token
		}
	}
	return config
})
//响应拦截
http.interceptors.response.use(response => {
	console.info(response);
	
	//TODO
	if (response.statusCode == successCode) {
		// res为服务端返回值，可能有code，result等字段
		// 这里对res进行返回，将会在this.$u.post(url).then(res => {})的then回调中的res的到
		// 如果配置了originalData为true，请留意这里的返回值
		if (response.data.code === 401) {
			fui.toast('登录失效，请重新登录');
			uni.navigateTo({
				url: "/pages/login/index"
			})
			return response.data
		}
		if(response.data.code === 444) {
			fui.toast(response.data.msg);
			return response.data
		}
		return response.data;
	} else {
		fui.toast('接口出错')
	}
})

export default http